home *** CD-ROM | disk | FTP | other *** search
/ Whiteline: Alpha / Whiteline Alpha.iso / tex / strunk / disk_6 / inputs_1.lzh / inputs / atari / atari.mf < prev    next >
Encoding:
Text File  |  1990-10-19  |  12.1 KB  |  417 lines

  1. % This is ATARI.MF, the mode definition file for the ATARI ST PD MetaFont.
  2. %
  3. % Version 2.0 (AUG 1990): Added 'art.mf' specials. Cleaned up some parameters.
  4. %                         Added many new modes at the end.
  5. %                         Improved explaination of mode parameters.
  6. % Version 2.1 (SEP 1990): Added experimental 'deskjet' mode.
  7. % Version 2.2 (OCT 1990): Added 'canon_bj' modes.
  8. %
  9. % Mode definitions parameters (\MetaFont book, chapter 11):
  10. %
  11. % blacker : if font is too light, make it a little bit blacker
  12. %           try 0 first, then 0.2, then other values until the
  13. %           fonts look black enough. The value should not be negative.
  14. %
  15. % fillin : Represents the amount by which diagonal strokes tend to be
  16. %          darker than horizontal or vertical strokes.
  17. %          (normally  0 <= fillin < 0.3)
  18. %
  19. %          Check this value with the 'line' and 'circle' fonts. The value
  20. %          is Ok when horizontal, vertical and diagonal lines all appear
  21. %          with the same darkness.
  22. %
  23. % o_correction : Correction for overshoot. 0.1 <= o_correction <= 1
  24. %                Normally select higher values for higher resolution
  25. %                and lower values for lower resolution devices
  26. %
  27. % >>> If you want to change definitions, 'blacker' is the only thing you
  28. % >>> normally may want to change.
  29. %
  30.  
  31. base_version:=base_version&"/Atari";
  32.  
  33. %%%% Screen mode for the previewer %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  34.  
  35. mode_def atari=
  36.  proofing:=0;
  37.  fontmaking:=1;
  38.  tracingtitles:=0;
  39.  pixels_per_inch:=96;
  40.  blacker:=0;
  41.  fillin:=0;
  42.  o_correction:=0.1;
  43. enddef;
  44.  
  45. %%%% Canon BJ-130 ink jet printer %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  46.  
  47. mode_def canon_bj_low=
  48.  proofing:=0;
  49.  fontmaking:=1;
  50.  tracingtitles:=0;
  51.  pixels_per_inch:=180;
  52.  blacker:=0.6;
  53.  fillin:=0.2;
  54.  o_correction:=0.65;
  55. enddef;
  56.  
  57. mode_def canon_bj=
  58.  proofing:=0;
  59.  fontmaking:=1;
  60.  tracingtitles:=0;
  61.  pixels_per_inch:=360;
  62.  blacker:=0.6;
  63.  fillin:=0.2;
  64.  o_correction:=0.65;
  65. enddef;
  66.  
  67. %%% NEC P6 24-pin printer %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  68.  
  69. mode_def nec_p_six=
  70.  proofing:=0;
  71.  fontmaking:=1;
  72.  tracingtitles:=0;
  73.  pixels_per_inch:=180;
  74.  blacker:=0.1;
  75.  fillin:=0.1;
  76.  o_correction:=0.3;
  77. enddef;
  78.  
  79. mode_def nec_p_six_md=       % these `mixed' fonts don't look very good
  80.  proofing:=0;
  81.  fontmaking:=1;
  82.  tracingtitles:=0;
  83.  pixels_per_inch:=360;
  84.  aspect_ratio:=180/360;
  85.  blacker:=0;
  86.  fillin:=0.2;
  87.  o_correction:=0.65;
  88. enddef;
  89.  
  90. mode_def nec_p_six_hd=
  91.  proofing:=0;
  92.  fontmaking:=1;
  93.  tracingtitles:=0;
  94.  pixels_per_inch:=360;
  95.  blacker:=0;
  96.  fillin:=0.2;
  97.  o_correction:=0.65;
  98. enddef;
  99.  
  100. %%%% HP LaserJet laser printer %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  101.  
  102. mode_def laserjet_low=
  103.  proofing:=0;
  104.  fontmaking:=1;
  105.  tracingtitles:=0;
  106.  pixels_per_inch:=150;
  107.  blacker:=0;
  108.  fillin:=0.1;
  109.  o_correction:=0.3;
  110. enddef;
  111.  
  112. mode_def laserjet=
  113.  proofing:=0;
  114.  fontmaking:=1;
  115.  tracingtitles:=0;
  116.  pixels_per_inch:=300;
  117.  blacker:=0;
  118.  fillin:=0.1;
  119.  o_correction:=0.6;
  120. enddef;
  121.  
  122. %%%% HP DeskJet ink jet printer %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  123.  
  124. mode_def deskjet=
  125.  proofing:=0;
  126.  fontmaking:=1;
  127.  tracingtitles:=0;
  128.  pixels_per_inch:=300;
  129.  blacker:=0.6;
  130.  fillin:=0.1;
  131.  o_correction:=0.6;
  132. enddef;
  133.  
  134. %%%% EPSON FX-80 family 9-pin printers %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  135.  
  136. mode_def fx_eighty=
  137.  proofing:=0;
  138.  fontmaking:=1;
  139.  tracingtitles:=0;
  140.  pixels_per_inch:=240;
  141.  aspect_ratio:=216/240;
  142.  blacker:=0;
  143.  fillin:=0.1;
  144.  o_correction:=0.5;
  145. enddef;
  146.  
  147. mode_def fx_fast=
  148.  proofing:=0;
  149.  fontmaking:=1;
  150.  tracingtitles:=0;
  151.  pixels_per_inch:=80;
  152.  aspect_ratio:=72/80;
  153.  blacker:=0;
  154.  fillin:=0.1;
  155.  o_correction:=0.2;
  156. enddef;
  157.  
  158. mode_def rx_eighty=
  159.  proofing:=0;
  160.  fontmaking:=1;
  161.  tracingtitles:=0;
  162.  pixels_per_inch:=120;
  163.  aspect_ratio:=144/120;
  164.  blacker:=0.1;
  165.  fillin:=0.1;
  166.  o_correction:=0.3;
  167. enddef;
  168.  
  169. mode_def mx_eighty=
  170.  proofing:=0;
  171.  fontmaking:=1;
  172.  tracingtitles:=0;
  173.  pixels_per_inch:=60;
  174.  aspect_ratio:=72/60;
  175.  blacker:=0;
  176.  fillin:=0.1;
  177.  o_correction:=0.2;
  178. enddef;
  179.  
  180. %%%% Linotype Linotronic 300 page setter %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  181. % These linotype modes are very experimental !
  182.  
  183. mode_def linotype_low=
  184.  proofing:=0;
  185.  fontmaking:=1;
  186.  tracingtitles:=0;
  187.  pixels_per_inch:=635;
  188.  blacker:=0;
  189.  fillin:=0;
  190.  o_correction:=1;
  191. enddef;
  192.  
  193. mode_def linotype=
  194.  proofing:=0;
  195.  fontmaking:=1;
  196.  tracingtitles:=0;
  197.  pixels_per_inch:=1270;
  198.  blacker:=0;
  199.  fillin:=0;
  200.  o_correction:=1;
  201. enddef;
  202.  
  203. mode_def linotype_high=
  204.  proofing:=0;
  205.  fontmaking:=1;
  206.  tracingtitles:=0;
  207.  pixels_per_inch:=2540;
  208.  blacker:=0;
  209.  fillin:=0;
  210.  o_correction:=1;
  211. enddef;
  212.  
  213. %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  214. %
  215. % The following was stolen from 'art.mf' and 'waits.mf'.
  216. %
  217. %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  218.  
  219. % Macros to add mode information specials to fonts. (by Pierre MacKay)
  220.  
  221. def mode_special(suffix $) =
  222.   string s,d;
  223.   s:=str$; d:=decimal scantokens s;
  224.   special s&":="&d&";" enddef;
  225.  
  226. def font_mode_specials =
  227.  p_p_i=pixels_per_inch/mag; 
  228.  if fontmaking > 0:
  229.  begingroup; save d,s,p; save pixels_per_inch;
  230.   string p;
  231.   pixels_per_inch:=p_p_i;
  232.   special jobname;
  233.   mode_special(mag);
  234.   if string mode: p:=mode;
  235.   else: p:=substring(0,length(mode_name[mode])-1) of mode_name[mode]; fi
  236.   special "mode:="&p&";";
  237.   mode_special(pixels_per_inch);
  238.   mode_special(blacker);
  239.   mode_special(fillin);
  240.   mode_special(o_correction);
  241.  endgroup;
  242.  fi
  243. enddef;
  244.  
  245. % Macros for Xerox-world font info:
  246.  
  247. def font_family expr s =  % string s names the font family, e.g., "CMR"
  248.  headerbyte 49: BCPL_string(s,20);
  249.  special "identifier "&s enddef;
  250. def coding_scheme expr s = % string s names the scheme, e.g. "TEX TEXT"
  251.  headerbyte 9: BCPL_string(s,40);
  252.  special "codingscheme "&s enddef;
  253. def font_face_byte expr x = % integer x gives the family member number,
  254.  headerbyte 72: x;          % which should be between 0 and 255
  255.  special "fontfacebyte"; numspecial x enddef;
  256.  
  257. def BCPL_string(expr s,n)= % string s becomes an n-byte BCPL string
  258.  for l:=if length(s)>=n: n-1 else: length(s) fi: l
  259.   for k:=1 upto l: , substring (k-1,k) of s endfor
  260.   for k:=l+2 upto n: , 0 endfor endfor enddef;
  261.  
  262. Xerox_world:=1;    % users can say `if known Xerox_world:...fi'
  263.  
  264. inner end;
  265. def bye=
  266.  if fontmaking>0: font_family font_identifier_;
  267.   coding_scheme font_coding_scheme_;
  268.   font_face_byte max(0,254-round 2designsize);
  269.   font_mode_specials; fi
  270.  end
  271.  enddef;
  272.  
  273. outer bye,end;
  274.  
  275. %%%%%%%%%%%%%%%%%%% Local setup %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  276.  
  277. localfont:=atari;
  278.  
  279. %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  280. %
  281. % You may end the input here, if you do not need the following modes
  282. %
  283. %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  284.  
  285. %% endinput;  % comment out to get the following modes
  286.  
  287. %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  288. %
  289. % Here are some collected modes from various sources
  290. %
  291. %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  292.  
  293. %%%%%%%% modes from 'waits.mf' (1986) %%%%%%%%
  294.  
  295. mode_def dover =  % dover mode: for the Xerox Dover
  296.  proofing:=0;         % no, we're not making proofs
  297.  fontmaking:=1;       % yes, we are making a font
  298.  tracingtitles:=0;    % no, don't show titles in the log
  299.  pixels_per_inch:=384;
  300.  blacker:=1.2;        % make pens somewhat blacker
  301.  fillin:=0;           % no compensation for fillin
  302.  o_correction:=.6;    % but don't overshoot as much
  303.  enddef;
  304.  
  305. % imagen is for laser printers with canon engine
  306.  
  307. mode_def imagen = % imagen mode: for the Imagen 8/300 (Canon engine)
  308.  proofing:=0;         % no, we're not making proofs
  309.  fontmaking:=1;       % yes, we are making a font
  310.  tracingtitles:=0;    % no, don't show titles in the log
  311.  pixels_per_inch:=300;
  312.  blacker:=0;          % Canon engine is black enough
  313.  fillin:=.2;          % and it tends to fill in diagonals
  314.  o_correction:=.6;    %
  315.  enddef;
  316.  
  317. % qms is for laser printers with xerox engine
  318.  
  319. mode_def qms =    % qms mode: for the QMS (Xerox engine)
  320.  proofing:=0;         % no, we're not making proofs
  321.  fontmaking:=1;       % yes, we are making a font
  322.  tracingtitles:=0;    % no, don't show titles in the log
  323.  pixels_per_inch:=300;
  324.  blacker:=.75;        % (this value is conjectural)
  325.  fillin:=0;           % (ditto)
  326.  o_correction:=.5;    % (ditto)
  327.  enddef;
  328.  
  329. mode_def aps =    % aps mode: for the Autologic APS-Micro5
  330.  proofing:=0;         % no, we're not making proofs
  331.  fontmaking:=1;       % yes, we are making a font
  332.  tracingtitles:=0;    % no, don't show titles in the log
  333.  pixels_per_inch:=722.909;    % that's roughly 10 per pt
  334.  blacker:=.2;         % make pens a teeny bit blacker
  335.  fillin:=.2;          % but compensate for diagonal fillin
  336.  o_correction:=1;     % and keep the full overshoot
  337.  enddef;
  338.  
  339. mode_def crs =    % crs mode: for the Alphatype CRS
  340.   proofing:=0;        % no, we're not making proofs
  341.  fontmaking:=1;       % yes, we are making a font
  342.  tracingtitles:=0;    % no, don't show titles in the log
  343.  begingroup interim warningcheck:=0;  % (we need to go past 4096)
  344.   pixels_per_inch:=4000+4000/3 endgroup;  % HIGH res
  345.  blacker:=4;          % make pens a lot blacker
  346.  fillin:=0;           % but don't compensate for fillin
  347.  o_correction:=1;     % and keep the full overshoot
  348.  enddef;
  349.  
  350. mode_def boise =  % boise mode: for the HP 2680A
  351.  proofing:=0;         % no, we're not making proofs
  352.  fontmaking:=1;       % yes, we are making a font
  353.  tracingtitles:=0;    % no, don't show titles in the log
  354.  pixels_per_inch:=180;
  355.  blacker:=.55;        % make pens a bit blacker
  356.  fillin:=.1;          % and compensate for diagonal fillin
  357.  o_correction:=.3;    % but don't overshoot much
  358.  enddef;
  359.  
  360. mode_def DD =     % DD mode: for the DataDisc (usually with mag=magstep 2=1.44)
  361.  proofing:=0;         % no, we're not making proofs
  362.  fontmaking:=1;       % yes, we are making a font
  363.  tracingtitles:=0;    % no, don't show titles in the log
  364.  pixels_per_inch:=70; % really lowres
  365.  blacker:=0;          % don't make the pens any blacker
  366.  fillin:=0;           % and don't compensate for fillin
  367.  o_correction:=.2;    % but suppress most overshoots
  368.  enddef;
  369.  
  370. mode_def canon =  % canon mode: for the old Imagen (Canon LBP10)
  371.  proofing:=0;         % no, we're not making proofs
  372.  fontmaking:=1;       % yes, we are making a font
  373.  tracingtitles:=0;    % no, don't show titles in the log
  374.  pixels_per_inch:=240;
  375.  blacker:=.2;         % make pens a wee bit blacker
  376.  fillin:=.2;          % and compensate for fillin
  377.  o_correction:=.4;    % but don't overshoot as much
  378.  enddef;
  379.  
  380. mode_def newDD =  % newDD mode: for DataDisc with special aspect ratio
  381.  proofing:=0;         % no, we're not making proofs
  382.  fontmaking:=1;       % yes, we are making a font
  383.  tracingtitles:=0;    % no, don't show titles in the log
  384.  pixels_per_inch:=70; % really lowres
  385.  blacker:=0;          % don't make the pens any blacker
  386.  fillin:=0;           % and don't compensate for fillin
  387.  o_correction:=.2;    % but suppress most overshoots
  388.  aspect_ratio:=4/3;   % this is the new feature...
  389.  enddef;
  390.  
  391. mode_def cg =     % cg mode: for the Compugraphic 8600
  392.  proofing:=0;         % no, we're not making proofs
  393.  fontmaking:=1;       % yes, we are making a font
  394.  tracingtitles:=0;    % no, don't show titles in the log
  395.  pixels_per_inch:=1301.5;    % a bit less than 20 per pt
  396.  blacker:=.2;         % make pens a teeny bit blacker
  397.  fillin:=.2;          % but compensate for diagonal fillin
  398.  o_correction:=1;     % and keep the full overshoot
  399.  aspect_ratio:=1569/1301.5;    % strange, no?
  400.  enddef;
  401.  
  402.  
  403. %%%%%%%% mode from Pierre MacKay mail (1986) %%%%%%%%
  404.  
  405. % Adobe mode: for the Laser-writer at 300 pixels per inch
  406. mode_def adobe =
  407.  proofing:=0;          % no, we're not making proofs
  408.  fontmaking:=1;        % yes, we are making a font
  409.  tracingtitles:=0;     % no, don't show titles at all
  410.  pixels_per_inch:=300; % the new Canon engine at 300/inch
  411.  blacker:=0.25;        % make pens a bit blacker
  412.  fillin:=0.15;         % compensate for diagonal fillin
  413.  o_correction:=.4;     % but don't overshoot as much
  414.  enddef;
  415.  
  416. % -eof-
  417.